package com.dhcc.bpm.modules.log.vo;

import org.springblade.core.mp.base.Excel;
import com.dhcc.bpm.modules.api.entity.Product;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @ClassName ProductRankVo.class
 * @Description 产品统计返回视图实体类
 * @Author xiaFaYu
 * @Date 2019-12-16 14:16
 * @Version V1.0
 * @Copyright: 2020 东华软件 . All rights reserved.
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ProductRankVo", description = "热门API排名")
public class ProductRankVo extends Product {
    private static final long serialVersionUID = 1L;
    /**
     * 请求日期
     */
    private String requestDate;
    /**
     * 开始日期
     */
    private String begDate;
    /**
     * 结束日期
     */
    private String endDate;
    /**
     * 排名
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    @Excel(name = "排名")
    private Integer rank;
    /**
     * 交易量
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    @Excel(name = "交易量(笔)")
    private Long num;
    /**
     * 涨幅量
     */
    @Excel(name = "本日涨幅")
    private String increase;
    /**
     * 涨幅标志
     */
    private String flag;
    /**
     * 标志环境(1：沙箱测试环境，0：生产环境)
     */
    private String env;
    /**
     * 成功量
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Long successNum;
    /**
     * 成功率
     */
    @Excel(name = "交易成功率")
    private String successRate;
    /**
     * 平均响应时间
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    @Excel(name = "平均响应时间(s)")
    private Double responseTime;
    /**
     * 交易金额
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private Double txAmt;
    /**
     * 产品Id
     */
    private String productId;
    /**
     * 总行数
     */
    @JsonSerialize(using = ToStringSerializer.class,nullsUsing = NullSerializer.class)
    private Long lineNum;
    /**
     * 请求来源页面标志
     */
    private String reqFlag;
}
